Test case prioritization using Cuscuta search
نویسندگان
چکیده
Most companies are under heavy time and resource constraints when it comes to testing a software system. Test prioritization technique(s) allows the most useful tests to be executed first, exposing faults earlier in the testing process. Thus makes software testing more efficient and cost effective by covering maximum faults in minimum time. But test case prioritization is not an easy and straightforward process and it requires huge efforts and time. Number of approaches is available with their proclaimed advantages and limitations, but accessibility of any one of them is a subject dependent. In this paper, artificial Cuscuta search algorithm (CSA) inspired by real Cuscuta parasitism is used to solve time constraint prioritization problem. We have applied CSA for prioritizing test cases in an order of maximum fault coverage with minimum test suite execution and compare its effectiveness with different prioritization ordering. Taking into account the experimental results, we conclude that (i) The average percentage of faults detection (APFD) is 82.5% using our proposed CSA ordering which is equal to the APFD of optimal and ant colony based ordering whereas No ordering, Random ordering and Reverse ordering has 76.25%, 75%, 68.75% of APFD respectively.
منابع مشابه
An Optimized technique for Test Case Generation and Prioritization Using 'Tabu' Search and 'Data Clustering'
In practice, an available testing budget limits the number of test cases that can be executed over particular software. This paper presents a ―Tabu‖ search algorithm for the automatic generation of software test cases and their prioritization through clustering technique of data mining. The developed test case generator has a cost function for intensifying the search and another for diversifyin...
متن کاملMetaheuristic Based Approach to Regression Testing
Regression testing is a very expensive and time consuming process as there may be insufficient resources to re-execute all the test cases in resource and time constrained environment. It acquires a lot of human effort, if done manually. Lot of techniques have been reported on how to select regression tests so that the number of test cases do not boast up too high as the software evolves. The te...
متن کاملInput-based adaptive randomized test case prioritization: A local beam search approach
Test case prioritization assigns the execution priorities of the test cases in a given test suite. Many existing test case prioritization techniques assume the fullfledged availability of code coverage data, fault history, or test specification, which are seldom well-maintained in realworld software development projects. This paper proposes a novel family of input-based local-beam-search adapti...
متن کاملImproving Test Efficiency through Prioritization Based On Testing Dependency
During the various iterations of software development, test case prioritization generally schedules test cases in order to increase test efficiency as soon as possible without reducing the scale of the test. It is noted that currently, many prioritization techniques are usually based on the assumption that the test cases are independent so as to reduce testing effort. However in the actual test...
متن کاملTest Case Prioritization: Various Techniques–A Review
Regression testing is extremely very expensive process for software development and maintenance. Whenever software is modified then re-executing all the test cases that have previously tested to ensure that there no new errors have been introduced in the code due to modification. For this researchers can prioritize the test cases to increase the effectiveness of the testing process and to reduc...
متن کامل